package java6703.lesson09;
import java.io.*;
import java.util.Scanner;

    /*
    两个方法：
    （1）主方法：负责输入文件名；
    （2）write6703()：负责向文件中写入数据，但不能throws异常，如遇到异常返回-1；
    （3）使用字符流向文件中写入数据；
     */

public class WriteFile6703 {
    public static void main(String[] args) {

        //主方法：负责输入文件名
        Scanner sc = new Scanner(System.in);

        //输入文件名
        System.out.printf("请输入文件名：");
        String fileName = sc.nextLine();
        write6703(fileName);
        File file = new File(fileName);
        System.out.println("已向文件"+fileName+"中写入"+file.length()+"字节");
    }

    //write6703()：负责向文件中写入数据，但不能throws异常，如遇到异常返回-1；
    private static void write6703(String fileName) {
        Scanner sc = new Scanner(System.in);
        Writer out = null;

        try {
            out = new FileWriter(fileName, true);
            System.out.println("请逐行输入要写入文件的内容，直到输入end结束");

            //使用字符流向文件中写入数据
            String text = "";
            while (!("end".equals(text.toLowerCase()))) {
                if (!("".equals(text))){
                    out.write(text + "\r\n");
                }
                text = sc.nextLine();
            }
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (out != null) {
                try {
                    out.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}